package com.ep.rxjava2;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;

public class MainActivity extends AppCompatActivity {

   private RxJavaUtil mRxJavaUtil;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mRxJavaUtil=new RxJavaUtil();
    }

    public void test(View view){
    //    mRxJavaUtil.testCreate();//create操作符：主要用于创建一个Obsevable对象
    //    mRxJavaUtil.testMap();//map操作符：将某种Observable通过某种函数关系转换成另一种Observable
     //   mRxJavaUtil.testZip();//zip操作符：用于合并事件，进行两两配对，最终配对出的Observable发射事件数目和最少的那个相同
    //    mRxJavaUtil.testConcat();//concat操作符：将单一的两个Observable连成一个Observable
     //   mRxJavaUtil.testFlapMap();//flapmap操作符：把一个Observable通过某种方法转换成多个Observable,然后把这些分散的Observable装进一个单一的Observable,注：不能保证发射顺序
   //     mRxJavaUtil.testConcatMap();//concatMap操作符：作用与flapmap一致，区别是它能保证发射顺序
      //  mRxJavaUtil.testDistinct();//distinct操作符：去除重复的发射内容
    //    mRxJavaUtil.testFilter();//filter操作符：过滤不符合条件的值
     //   mRxJavaUtil.testBuffer();//buffer操作符：将Observable中的数据按buffer参数二（步长）分成最大不超过参数一的buffer,然后生成一个Obwervable
    //    mRxJavaUtil.testTimer();//timer操作符：相当于一个定时器
  //      mRxJavaUtil.testInterval();//interval操作符：用于间隔时间执行某个操作
   //     mRxJavaUtil.testDoOnNext();//doOnNext：在观察者接收数据之前做些事情，如保存数据之类
    //    mRxJavaUtil.testSkip();//skip操作符：跳过count个数目开始接收
    //    mRxJavaUtil.testTake();//take操作符：表标至多接收count个数据
     //   mRxJavaUtil.testJust();//just操作符：就是一个简单的发射器，依次调用onNext()方法
      //  mRxJavaUtil.testSingle();
      //  mRxJavaUtil.testDebounce();//debounce操作符：去队频率过快的项
       // mRxJavaUtil.testDefer();
   //     mRxJavaUtil.testLast();//last操作符：取出可观察到的最后一个值，或者满足某些条件的最后一项
   //     mRxJavaUtil.testMerge();//merge操作符：把多个Observable结合起来，接受可变参数，也支持迭代器集合
   //     mRxJavaUtil.testReduce();
    //    mRxJavaUtil.testScan();
        mRxJavaUtil.testWindow();

    }

    public void test2(View view){

    }
}
